Randomized Exponentiation Algorithms
نویسنده
چکیده
A randomized algorithm for function f takes the usual inputs for f together with a stream of random numbers and combines them in a way such that partial or complete knowledge of the atomic operations used to compute f does not easily reveal the values of some or all inputs. The output of f is still computed correctly, but the value is independent of the random input stream. In this chapter we consider randomized algorithms for the exponentiation function and assume that side channel leakage reveals a certain level of partial knowledge about the arithmetic and read/write operations performed on the manipulated big numbers. Our object is to make it computationally infeasible for an attacker to use this information to deduce the secret exponent during its use over the lifetime of a cryptographic token. For example, in the usual square-and-multiply algorithm (Figure 17.1, [6]), full knowledge of the sequence of squares and multiplies immediately determines the complete exponent uniquely. Specifically, there is an exponent bit for every square; and every time the square is followed by a multiplication the bit must be a 1, whereas it must be a 0 when the square is followed by another square. As a rule, leaked information is rarely without error; a number of squares may be incorrectly recorded as multiplications and vice versa. Hence there is normally some error correction to be performed. If the number of errors is small enough, a search of nearby keys will discover the true value D in a computationally feasible time. Its correctness can be confirmed easily by using the corresponding public key E and the relation PED = P. Traversing the search space must often be done intelligently, selecting the most probable alternatives first in order to have any hope of finding the key. In typical protocols using RSA [13], the same secret key D is re-used a number of times, during which it may or may not be possible to blind it by, for example, adding
منابع مشابه
Improvement on Ha-Moon Randomized Exponentiation Algorithm
Randomized recoding on the exponent of an exponentiation computation into a signed-digit representation has been a well known countermeasure against some side-channel attacks. However, this category of countermeasures can only be applicable to those cryptosystems with fixed parameters on the base integer when evaluating exponentiation or to some classes of cryptosystems such that the inversion ...
متن کاملEfficient elliptic curve cryptosystems
Elliptic curve cryptosystems (ECC) are new generations of public key cryptosystems that have a smaller key size for the same level of security. The exponentiation on elliptic curve is the most important operation in ECC, so when the ECC is put into practice, the major problem is how to enhance the speed of the exponentiation. It is thus of great interest to develop algorithms for exponentiation...
متن کاملSelf-Randomized Exponentiation Algorithms
Exponentiation is a central process in many public-key cryptosystems such as RSA and DH. This paper introduces the concept of self-randomized exponentiation as an efficient means for preventing DPAtype attacks. Self-randomized exponentiation features several interesting properties: – it is fully generic in the sense that it is not restricted to a particular exponentiation algorithm; – it is par...
متن کاملWhat is the Inverse of Repeated Square and Multiply Algorithm?
It is well known that the repeated square and multiply algorithm is an efficient way of modular exponentiation. The obvious question to ask is if this algorithm has an inverse which would calculate the discrete logarithm and what is its time compexity. The technical hitch is in fixing the right sign of the square root and this is the heart of the discrete logarithm problem over finite fields of...
متن کامل2 00 7 What is the Inverse of Repeated Square and Multiply Algorithm ?
It is well known that the repeated square and multiply algorithm is an efficient way of modular exponentiation. The obvious question to ask is if this algorithm has an inverse which would calculate the discrete logarithm and what is its time compexity. The technical hitch is in fixing the right sign of the square root and this is the heart of the discrete logarithm problem over finite fields of...
متن کاملM ar 2 00 7 What is the Inverse of Repeated Square and Multiply Algorithm ?
It is well known that the repeated square and multiply algorithm is an efficient way of modular exponentiation. The obvious question to ask is if this algorithm has an inverse which would calculate the discrete logarithm and what is its time compexity. The technical hitch is in fixing the right sign of the square root and this is the heart of the discrete logarithm problem over finite fields of...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2009